Programming languages for Ethereum

A programming language used for writing programs (code) for smart

contracts is called Solidity.

Ethereum was mainly programmed in C++, Python, GoLang, and Solidity.

LLL

It is the first high-level functional programming language used for

writing Ethereum smart contracts.

Serpent

It is a procedural programming language used to write functional

code.

Solidity

It is a procedural programming language used popularly to write smart

contracts for Ethereum.

Vyper

It is a newly developed language having similarity to Serpent with

Python-like syntax.

Bamboo

It is a language without iterative flows and having explicit state

transitions; the intention is to increase the auditability, in spite of its

being new and yet to be widely adopted.

Ethereum virtual machine

Regardless of the programming language used, being a Turing complete

software, the EVM runs on the Ethereum network and enables any program

to be run by anyone, given enough time and memory. Creating blockchain

applications easily and efficiently has been made by EVM. Ethereum

enables the development of several different applications all on one

platform instead of developing an entirely original blockchain for each new

application.

Layers of Ethereum platform

The various layers (see figure 5.1) of the Ethereum platform are as follows: